﻿// 3702. 十六进制不进位加法.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://www.acwing.com/problem/content/3705/


16进制不进位的加法，即和正常加法类似，只是不用去计算进位的数，比正常的加法更简单。

如 A+6=0（正常加法是 10，但是由于不进位所以只有 0）。

输入格式
输入包含多组测试数据。

每组数据占一行，包含两个十六进制数，字母统一大写。

输出格式
每组数据输出一行不进位加法的结果。

数据范围
输入数字长度不超过 100。

输入样例：
123 456
6 A
输出样例：
579
0
*/

#include <iostream>
#include <vector>
#include <map>
#include <algorithm>

using namespace std;

string a, b;

map<int, char> mm{
	{0, '0'},
	{ 1,'1' },
	{ 2,'2' },
	{ 3,'3' },
	{ 4,'4' },
	{ 5,'5' },
	{ 6,'6' },
	{ 7,'7' },
	{ 8,'8' },
	{ 9,'9' },
	{ 10,'A' },
	{ 11,'B' },
	{ 12,'C' },
	{ 13,'D' },
	{ 14,'E' },
	{ 15,'F' }
};

void calc(string a, string b) {
	string ans;
	if (a.size() > b.size()) swap(a, b);
	reverse(a.begin(), a.end());
	reverse(b.begin(), b.end());
	int i = 0;
	for (i = 0; i < a.size(); i++) {
		int t1 = 0; int t2 = 0;
		if (a[i] >= '0' && a[i] <= '9') { t1 = a[i] - '0'; }
		else if (a[i] >= 'A' && a[i] <= 'F') { t1 = a[i] - 'A' + 10; }

		if (b[i] >= '0' && b[i] <= '9') { t2 = b[i] - '0'; }
		else if (b[i] >= 'A' && b[i] <= 'F') { t2 = b[i] - 'A' + 10; }
		int c = (t1 + t2) % 16;
		ans.push_back(mm[c]);
	}
	while (i < b.size()) {
		int t2 = 0;
		if (b[i] >= '0' && b[i] <= '9') { t2 = b[i] - '0'; }
		else if (b[i] >= 'A' && b[i] <= 'F') { t2 = b[i] - 'A' + 10; }
		ans.push_back(mm[t2]);
		i++;
	}

	reverse(ans.begin(), ans.end());

	for (int i = 0; i < ans.size(); i++) {
		cout << ans[i];
	}
	cout << endl;
	return;
}


int main()
{
	while (cin >> a >> b) {
		calc(a, b);
	}

	return 0;
}
